home *** CD-ROM | disk | FTP | other *** search
/ PC Media 4 / PC MEDIA CD04.iso / share / udos / qemmtour / tour.tec
Text File  |  1992-01-08  |  22KB  |  391 lines

  1. ID:TO  QEMM-386's Parameters and how they affect your system
  2. DESQview Technical Note #228
  3. by Quarterdeck Testing & Compatibility Department
  4. December 27, 1991
  5.  
  6.                               GRAND TOUR: 
  7.        USING MANIFEST TO SEE THE EFFECT OF QEMM-386'S PARAMETERS
  8.  
  9.      This is a tour of your computer through the facilities of Manifest 
  10. to see how the parameters of QEMM can affect the performance of your 
  11. machine and to learn about your machine.  The screen of Manifest under 
  12. discussion is identified by listing the principal section, as displayed 
  13. in the vertical menu on the left of the Manifest screen, first, then a 
  14. "/", then the subsection of that principal section, as displayed on the 
  15. horizontal menu at the top of the Manifest screen.
  16.  
  17.      The first stop of the tour is the Overview screen of the QEMM-386 
  18. section.  
  19.  
  20. QEMM PARAMETER:  STEALTHROM (ST)
  21. MANIFEST VIEW:  QEMM-386/OVERVIEW
  22.      On the QEMM-386/Overview screen MANIFEST reports what version of 
  23. Stealth is being used on the line "Stealth Type".  On the line below 
  24. that it reports what ROMs are being "Stealth"ed, followed by how large 
  25. the ROM is.
  26.  
  27. QEMM PARAMETER:  SUSPENDRESUME (SUS)
  28. MANIFEST VIEW:  QEMM-386/MEMORY
  29.      If you have a laptop computer with a "RESUME" feature that QEMM-386 
  30. is supporting, the interrupt QEMM is hooking to support this is listed 
  31. on the QEMM-386/Overview screen.  You can force QEMM-386 to use any 
  32. particular interrupt with the parameter SUS:XX where XX is the interrupt 
  33. you wish QEMM to hook for this purpose.
  34.  
  35.     The second stop of the tour is the Memory screen of the QEMM-386 
  36. section.
  37.  
  38. QEMM PARAMETER:  NOFILL (NO)
  39. MANIFEST VIEW:  QEMM-386/MEMORY
  40.      If you have less than 640K of conventional memory before you load 
  41. QEMM-386 then the "Initial" column of the "Conventional" line of the 
  42. QEMM-386/Memory screen of Manifest will report this.  QEMM-386 will map 
  43. memory into the vacant address space below 640K to extend conventional 
  44. memory up to 640K.  If some program objects to this (Microsoft's 
  45. "Windows" in enhanced mode is one such program.) then the NOFILL (NO) 
  46. parameter will stop this from happening.
  47.  
  48. QEMM PARAMETER:  NOVIDEOFILL (NV)
  49. MANIFEST VIEW:  QEMM-386/MEMORY
  50.      If you have monochrome or Hercules or CGA video then address space 
  51. above 640k and contiguous with conventional memory is available. QEMM386 
  52. will automatically map memory to this address space to give you 704K 
  53. (monochrome or Hercules) or 736K (CGA) conventional memory.  The 
  54. "Converted by QEMM" column of the "Conventional" line of the QEMM-
  55. 386/Memory of Manifest will report that QEMM has converted 64K (or 96K) 
  56. memory, leaving 704K or 736K of conventional memory.  Some programs may 
  57. object to this.  The NOVIDEOFILL (NV) switch will stop this from 
  58. happening.
  59.  
  60. QEMM PARAMETER:  NOXBDA (NX)
  61. MANIFEST VIEW:  QEMM-386/MEMORY
  62.      We are still on the Conventional Memory line.  If the "Initial" 
  63. column of the "Conventional" line of the QEMM-386/Memory screen of 
  64. Manifest is 639K (on some computers it may be 638K or some other number) 
  65. then there may be a 1K (or more) piece of memory called the "Extended 
  66. BIOS Data Area".  This is a piece of memory used by the BIOS to store 
  67. information.  The specification by which the XBDA (as we abbreviate it) 
  68. allows it to be moved; its address is stored in the BIOS data area after 
  69. the parallel ports at address 40:E (see the First Meg/BIOS Data screen 
  70. of Manifest).
  71.      Unfortunately not all users of the XBDA go to the BIOS Data area to 
  72. see where the XBDA is; they presume that it is at 639K, read what is 
  73. there, and if that is not where the XBDA is they get the wrong 
  74. information and misbehave.  QEMM moves the XBDA by default into low 
  75. memory (QEMM's conventional memory overhead increases by 1K when this 
  76. happens; see the last line on the QEMM-386 Memory screen to see this 
  77. effect.)  The parameter "NOXBDA" ("NX") keeps QEMM386 from moving the 
  78. XBDA.  If you have an XBDA and run a program that only looks for it at 
  79. 639K then you need this switch.  It is possible that a hard drive 
  80. controller or some other device creates the XBDA.
  81.  
  82. QEMM PARAMETER:  EXTMEM (EXT)
  83. MANIFEST VIEW:  QEMM-386/MEMORY
  84.      On the "Extended ..." line of the QEMM-386/Memory screen of 
  85. Manifest you can see a report of how much extended memory QEMM-386 sees 
  86. on your machine and what QEMM-386 is doing with it.  You may notice that 
  87. the number in the "Initial" column is not as much as you thought you 
  88. should have.  Say you have a four megabyte system:  This probably means 
  89. 4096 kilobytes.  Subtract 640 kilobytes for conventional memory and you 
  90. would expect to find 3456 kilobytes.  If your machine has ShadowRAM or 
  91. Top Memory (see the two paragraphs following) then the initial number is 
  92. 384 kilobytes less than what you would expect.  This 384K may or may not 
  93. show up on the next line of this screen as ShadowRAM or Top Memory.  It 
  94. may still be being used for one of these purposes without QEMM-386 
  95. detecting it, explaining its absence on the initial column of the 
  96. extended line here.  On many systems a lesser amount of memory 
  97. (typically 128k) is reserved for shadowing ROMs and this only shows up 
  98. as missing on this line.
  99.      If you are using the parameter "extmem=xxxx" on the QEMM-386 line 
  100. then this amount of memory will show on the "Leaving" column of the 
  101. extended line.  This is unmanaged extended memory left behind by QEMM-
  102. 386 for those extended memory users that will not get the extended 
  103. memory they desire from the XMS manager.  Programs that get their 
  104. extended memory from the XMS manager (Windows 3, smartdrive, pc-kwik, pc-
  105. cache, for just a few examples) and any VCPI program will not see the 
  106. memory that is left behind with this parameter.
  107.      NOTE:  An EXTMEM=XXXX cannot be used when XXXX is greater than 
  108. 15360 (15 MB) because QEMM-386 redirects the DMA done by others, the DMA 
  109. controller chip cannot address memory above 16384K, and QEMM-386 leaves 
  110. memory from the bottom when an EXTMEM=XXXX is used.  An EXTMEM>15360 
  111. will keep QEMM-386 from being able to put the DMA buffer in the first 
  112. 16384K of the address space, preventing it from loading.
  113.  
  114. QEMM PARAMETER:  MEMORY (ME or MEM)
  115. MANIFEST VIEW:  QEMM-386/MEMORY
  116.      This parameter limits the amount of memory that QEMM-386 manages.  
  117. It is a complement to the "EXTMEM" parameter mentioned above.  All the 
  118. memory that QEMM-386 does not manage is left behind as unmanaged 
  119. extended memory.  You can see how much memory this is by going to the 
  120. QEMM-386/Memory screen of Manifest and looking at the "Leaving" column 
  121. of the "Extended" line.  For more information on the meaning of this 
  122. parameter you can read the above paragraphs on the "EXTMEM" parameter.
  123.      
  124. QEMM PARAMETER:  NOSHADOWRAM (NOSH)
  125. MANIFEST VIEW:  QEMM-386/MEMORY
  126.      Still in the QEMM-386 memory screen:  Is the line beneath 
  127. "Extended", "Shadow RAM"?  Then you have ShadowRAM.  ShadowRAM is a kind 
  128. of memory.  It is 384K of memory mapped by the hardware into the address 
  129. space between 640K and 1024K.  When you turn your machine on it copies 
  130. the contents of ROMs in this address space into the shadowRAM and future 
  131. accesses to the ROM go to this RAM instead.  RAM is faster than ROM so 
  132. your system runs faster.  Since you may have 384K of ShadowRAM and not 
  133. 384K of ROMs to shadow (You probably have only 96K or so) the rest of 
  134. the ShadowRAM is unused.
  135.      QEMM386 (beginning with version 5.0) tries to use this memory.  You 
  136. can see how much of it QEMM uses by looking at the subsequent lines of 
  137. the ShadowRAM line of this screen.  You will see that some of it is 
  138. unavailable to QEMM while some other amount is used.  The amount is 
  139. variable from machine to machine.  Quarterdeck has standardized on the 
  140. Chips & Technologies definition, the most common brand of ShadowRAM.
  141.      Not all manufacturers follow this standard and if theirs is 
  142. sufficiently different QEMM may not detect it or may detect and try to 
  143. manage it as though it were C&T ShadowRAM.  This possibility is why the 
  144. NOSHADOWRAM (NOSH) switch exists.  Give it a try if you have boot 
  145. problems or other memory problems.  On some machines QEMM's attempt to 
  146. manage ShadowRAM that is insufficiently similar to C&T ShadowRAM may 
  147. cause the machine to reboot continuously.
  148.  
  149. QEMM PARAMETER:  NOTOPMEMORY (NT)
  150. MANIFEST VIEW:  QEMM-386/MEMORY
  151.      Top Memory is a kind of memory that occupies the address space from 
  152. 16000K to 16384K, which is the top of the 16 Megabyte address space. 
  153. Compaq and Micronics use Top Memory for shadowing ROMs.  Beginning with 
  154. version 5.00 QEMM-386 tries to use all this memory that is not being 
  155. used by the system already.  If QEMM-386 is managing this memory it will 
  156. show up on the QEMM-386/Memory screen on a separate line underneath the 
  157. Extended memory line.  If, for some reason, QEMM-386 has problems 
  158. managing a particular implementation of Top Memory or it misreads the 
  159. system in such a way as to think that it has Top Memory when it really 
  160. does not, then this parameter will solve your problem.
  161.  
  162. QEMM PARAMETER:  NOEMS
  163. MANIFEST VIEW:  QEMM-386/MEMORY
  164.      This parameter tells QEMM-386 not to create any expanded memory.  
  165. If this parameter is on the QEMM386.SYS line of the config.sys then "0K" 
  166. is in the "Leaving" column of the "Expanded" line in the QEMM-386/Memory 
  167. screen of Manifest.
  168.  
  169. QEMM PARAMETER:  RAM
  170. MANIFEST VIEW:  QEMM-386/MEMORY
  171.      This parameter creates high RAM, the memory into which LOADHI loads 
  172. programs high.  The last line of the top box of the QEMM-386/Memory 
  173. screen of Manifest reports how much high RAM QEMM-386 creates.  If the 
  174. RAM parameter is not on the QEMM line (or if there is no vacant high 
  175. address space) the amount in the "Leaving" column of this line is "0K".  
  176. This parameter can be used to create high RAM only in limited portions 
  177. of the address space by restricting it with a statement such as 
  178. "RAM=B000-B7FF", which will create high RAM only from B000 to B7FF.
  179.  
  180. QEMM PARAMETER: TASKS (TA)
  181. MANIFEST VIEW:  QEMM-386/MEMORY
  182.      In the lower box of the QEMM-386/Memory screen of Manifest is 
  183. "Tasks:         8K".  Tasks are internal QEMM-386 data structures used 
  184. to handle interrupts out of protected mode.  All DOS interrupts must be 
  185. handled in real mode.  QEMM switches the machine out of protected mode 
  186. (into which it must put the machine to do its job) for the duration of 
  187. this interrupt.  Tasks are used to store the information that must be 
  188. saved when this is done.  Extended memory is used for Tasks, not 
  189. conventional memory.  The default number of tasks (16) is likely to be 
  190. enough for any user.
  191.  
  192. QEMM PARAMETER:  DMA (DM)
  193. MANIFEST VIEW:  QEMM-386/MEMORY
  194.      Underneath "Tasks" is "DMA Buffer:         12K".  DMA is the
  195. acronym for Direct Memory Address.  Some devices (most floppy disk
  196. controllers, some network cards, some hard disk controllers, many tape
  197. back-ups) use DMA.  This is a way to allow information to be transferred
  198. from the disk (network, etc.) to memory directly without burdening the
  199. CPU to perform the transfer.  QEMM-386 must divert DMA that is headed
  200. into mapped memory.  QEMM-386 sets aside a default DMA buffer of 12K. 
  201. This can be raised with the parameter DMA=XX where "XX" represents any
  202. number from 12 to 128.  Some devices may require a larger DMA buffer. 
  203. If a program demands a larger DMA buffer QEMM-386 will post an error
  204. message telling the user to increase the size of the DMA buffer.  If you
  205. have a program, such as a tape backup, fail, even if this error message
  206. is not reported raising the size of the DMA buffer is worth a try.
  207.  
  208. QEMM-386 PARAMETER:  MAPS (MA)
  209. MANIFEST VIEW:  QEMM-386/MEMORY
  210.      At the top of the second column in the lower box of the QEMM-
  211. 386/Memory screen of Manifest is "Maps:       32K".  MAPS are alternate 
  212. maps, an equivalent of the hardware registers used by some EMS boards to 
  213. help operating environments switch quickly between processes.  In 
  214. DESQview each window uses one of these alternate maps.   If DESQview 
  215. runs out of alternate maps, it must save and restore the entire expanded 
  216. memory map between processes.  This results in much less efficient 
  217. multitasking. Each MAP uses 4K of extended memory (no conventional 
  218. memory).  The default is 8 maps.  Raise this number if you wish to 
  219. multitask efficiently more windows than you currently have MAPS 
  220. allocated for (The maximum is 56.) or drop it to 0 (with MA=0) if you do 
  221. not use DESQview.  Microsoft Windows does not use the MAPS QEMM-386 sets 
  222. aside.
  223.  
  224. QEMM-386 PARAMETER:  ROM
  225. MANIFEST VIEW:  QEMM-386/MEMORY
  226.      On the second row of the second column of the lower box of the QEMM-
  227. 386/Memory screen is a line that reads:  "Mapped ROM:         4K" (or 
  228. some number).  This shows the amount of memory that QEMM-386 is using to 
  229. map ROMs.  Mapping ROM is creating RAM in the same portion of the 
  230. address space that a ROM occupies and copying the contents of the ROM 
  231. into this RAM.  Then accesses of ROM will go to RAM.  Accessing RAM is 
  232. faster than accessing ROM so this will speed the performance of the 
  233. machine.  The number on this line indicates the amount of memory 
  234. (extended memory, not conventional memory) used to map ROMs.  When the 
  235. ROM parameter is used without restriction then all ROMs are mapped.  The 
  236. ROM parameter can be used with restriction (ROM=C000-C7FF, for example) 
  237. to ROM only this portion of the address space.  If QEMM-386 is not 
  238. discovering a ROM that you know is there you may need to use a 
  239. restricted ROM= statement for QEMM-386 to map this ROM.
  240.      On Compaqs (and some other machines that QEMM-386 detects as having 
  241. this same feature.), QEMM-386 automatically maps some ROMs.  
  242.      The ROM parameter provides the same service that ShadowRAM does. 
  243. You should not use the ROM parameter on QEMM-386 if you are using the 
  244. built-in ShadowRAM of your computer, not because it will cause a 
  245. problem, but because it will be a waste of memory.
  246.  
  247. QEMM-386 PARAMETER:  NOROM (NR)
  248. MANIFEST VIEW:  QEMM-386/MEMORY
  249.      By default QEMM-386 maps the reboot page of the system ROM (See the 
  250. above paragraph for a discussion of mapping ROM).  QEMM-386 does this in 
  251. order to detect reboots more readily.  This is why there is at least 4k 
  252. of mapped ROM being reported on the second column of the lower box of 
  253. the QEMM-386/Memory screen of Manifest ("Mapped ROM:     4K").  This 
  254. feature is defeated by the NOROM (NR) parameter.  Using this parameter 
  255. may cause problems rebooting.
  256.  
  257.      The third stop of the tour is the Overview screen of the First Meg 
  258. section.
  259.  
  260. QEMM-386 PARAMETER:  NOXBDA (NX)
  261. MANIFEST VIEW:  FIRST MEG/OVERVIEW
  262.      We have already discussed this in a previous paragraph but we can 
  263. see it again on this screen.  If there is a line in the First 
  264. Meg/Overview screen that looks like this:
  265.  
  266.                 ===Conventional memory ends at 639K====
  267.            9FC0-9FFF      1K        Extended BIOS Data Area
  268.  
  269. then you have an XBDA.  QEMM-386 will move this by default unless the 
  270. NOXDDA parameter is on the QEMM-386 line of the config.sys.  This issue 
  271. is discussed in greater detail in the above paragraph on this same 
  272. parameter.  Of course, if QEMM-386 has moved your XBDA, as it does by 
  273. default, this line will not appear.
  274.  
  275. QEMM-386 PARAMETER:  EXCLUDE=MMMM-NNNN (X=MMMM-NNNN)
  276. MANIFEST VIEW:  FIRST MEG/OVERVIEW
  277.      The EXCLUDE=MMMM-NNNN parameter tells QEMM-386 not to map the 
  278. portion of the address space bounded below by MMMM and above by NNNN.  
  279. Any portion of the address space that QEMM-386 is kept from mapping by 
  280. an EXCLUDE that it does not recognize as already being occupied by some 
  281. other device will be described as "Unused" on the First Meg/Overview 
  282. screen of Manifest.  If Manifest sees something (ROM, Adapter RAM, etc.) 
  283. in the address space already, it will continue to report that this is 
  284. what it sees there.  
  285.  
  286. QEMM-386 PARAMETER:  RAM
  287. MANIFEST VIEW:  FIRST MEG/OVERVIEW
  288.      The portions of the high address space in which QEMM-386 has 
  289. created high RAM will have the description "High RAM" in the First 
  290. Meg/Overview screen of Manifest.  In order for any of the address space 
  291. to be turned into high RAM the RAM parameter must be on the QEMM-386 
  292. line of the config.sys.  This is discussed in greater detail in the 
  293. above paragraph about the RAM parameter.
  294.  
  295. QEMM-386 PARAMETER:  ROM
  296. MANIFEST VIEW:  FIRST MEG/OVERVIEW
  297.      The portions of the address space in which QEMM-386 is mapping ROM 
  298. are described as "Mapped ROM" on the First Meg/Overview screen of 
  299. Manifest. This parameter maps RAM into the address space occupied by 
  300. ROMs and copies the contents of those ROMs into this RAM for faster 
  301. performance.  This feature is discussed in greater detail in the ROM 
  302. section above.
  303.  
  304. QEMM-386 PARAMETER:  ADAPTERRAM=MMMM-NNNN (ARAM=MMMM-NNNN)
  305. MANIFEST VIEW:  FIRST MEG/OVERVIEW
  306.      The portion of the address space bounded below by MMMM and above by 
  307. NNNN with this parameter will be reported as Adapter RAM on the 
  308. description field of the First Meg/Overview screen of Manifest.  This 
  309. parameter causes the portion of the address space bounded by the 
  310. beginning address ("MMMM") and the ending address ("NNNN") not to be 
  311. mapped by QEMM-386.  This should be used when there is a portion of the 
  312. address space occupied by the adapter RAM of a physical device (like a 
  313. network card).  The only difference between this parameter and an 
  314. EXCLUDE=MMMM-NNNN is that the description the QEMM.COM program reports 
  315. changes to Adapter RAM, rather than "Excluded".
  316.  
  317. QEMM-386 PARAMETER:  ADAPTERROM=MMMM-NNNN (AROM=MMMM-NNNN)
  318. MANIFEST VIEW:  FIRST MEG/OVERVIEW
  319.      The portion of the address space bounded below by MMMM and above by 
  320. NNNN with this parameter will be reported as Adapter ROM on the 
  321. description field of the First Meg/Overview screen of Manifest.  This 
  322. parameter causes the portion of the address space bounded by the 
  323. beginning address ("MMMM") and the ending address ("NNNN") not to be 
  324. mapped by QEMM-386.  This should be used when there is a portion of the 
  325. address space occupied by the adapter ROM of a physical device (like a 
  326. disk controller ROM).  The only difference between this parameter and an 
  327. EXCLUDE=MMMM-NNNN is that the description the QEMM.COM program reports 
  328. changes to Adapter ROM, rather than "Excluded".
  329.  
  330. QEMM-386 PARAMETER:  (FR=XXXX)
  331. MANIFEST VIEW:  FIRST MEG/OVERVIEW
  332.      The location of the page frame is reported on the First 
  333. Meg/Overview screen of Manifest with the description of "Page Frame". 
  334. The "FRAME=XXXX" parameter tells QEMM-386 where to put the page frame.  
  335. XXXX can be any hexadecinal number that is a multiple of 16K (C000, 
  336. C400, C800, CC00, D000, D400, D800, DC00, E000, etc.)  The page frame is 
  337. 64K long.  Of course if you put your page frame on top of the address 
  338. space used by the video card, BIOS ROM, network card's RAM buffer, etc., 
  339. you will have trouble.  The default setting of FRAME is AUTO, which is 
  340. achieved by not having a FRAME=XXXX statement at all.  QEMM-386 finds 
  341. the location it feels is most suitable for the page frame, usually the 
  342. highest available free 64K piece of the address space.  With Stealth, 
  343. QEMM versions 6 and above will put the page frame at C000, if 
  344. appropriate, or EC00 by default.
  345.  
  346.      The fourth stop is the BIOS Data screen of the First Meg section.
  347.  
  348. QEMM-386 PARAMETER:  NOXBDA (NX)
  349. MANIFEST VIEW:  FIRST MEG/BIOS DATA
  350.      The third line of the First Meg/BIOS Data screen of Manifest will 
  351. read "0E: Extended Bios Segment   0AF8" (or whatever address at which 
  352. the XBDA is being put) if you have an Extended BIOS Data Area.  The XBDA 
  353. is discussed in greater detail in the NOXBDA section above in the QEMM-
  354. 386/Memory section and there is also a paragraph in the First 
  355. Meg/Overview section of this document.
  356.  
  357.      The fifth stop is the Timings screen of the First Meg section.
  358.  
  359. QEMM-386 PARAMETER:  ROM
  360. MANIFEST VIEW:  FIRST MEG/TIMINGS
  361.      If the timing of a portion of the address space occupied by a ROM 
  362. is as fast as the portion of the address space occupied by conventional 
  363. memory (Conventional Memory is in the address space beginning at 0000 
  364. and running, usually, to 9FFF.  The portion of the address space 
  365. occupied by a ROM should be identified as "System ROM", or "Disk ROM", 
  366. "Video ROM", or "Adapter ROM" on the description field of the First 
  367. Meg/Overview screen of Manifest ) then that ROM is being "shadowed" in 
  368. RAM; see the "ROM" section of the "QEMM-386/Memory" section of this 
  369. document.  If the speeds are the same without the ROM parameter on the 
  370. QEMM line then this service is being performed in hardware.
  371.      If this service is not being performed in hardware then you can use 
  372. QEMM-386 to provide this service by placing the ROM parameter on the 
  373. QEMM line of the config.sys.  You may find that, on some systems, only 
  374. the system ROM (or perhaps system and video ROMs) are being sped up by 
  375. the system hardware.  If you have a ROM that is not being sped up by the 
  376. system hardware then QEMM-386 can be used to speed up only a specific 
  377. range of ROM by using the parameter "ROM=MMMM-NNNN" where "MMMM" is the 
  378. beginning address of the ROM and "NNNN" is the ending address of the 
  379. ROM.  Say you have a Disk ROM at C800-CBFF and your system is shadowing 
  380. the System ROM (typically F000-FFFF) and Video ROM (typically C000-C7FF) 
  381. already but is not shadowing the Disk ROM:  You can put the parameter 
  382. "ROM=C800-CBFF" on the QEMM line of the config.sys to get this same 
  383. service for the disk ROM.  
  384.      See the "ROM" section of the QEMM-386/Memory section of this 
  385. document for more discussion of the ROM parameter and the "NOSHADOWRAM" 
  386. section of of the QEMM-386/Memory section of this document for more 
  387. discussion of the concept of shadowing ROMs.
  388.  
  389.            Copyright (C) 1991 by Quarterdeck Office Systems
  390.                 * * *   E N D   O F   F I L E    * * *
  391.